"""
功能描述：提取testcase内存在的初始化/清理方法
编写人：guodan
编写日期：2021年12月28日
实现逻辑：

    1-继承unittestTest
    2-编写setUp和setUpclass方法

"""

import unittest
from common.driver import Driver
from common.logs import logger


class MyTest(unittest.TestCase):
    #编写setUp和setUpclass方法
    @classmethod
    def setUpClass(cls) -> None:
        logger.info('执行setUpclass方法')
        cls.dr = Driver()
        cls.driver = cls.dr.startUp()

    def setUp(self) -> None:
        logger.info('执行setUp方法')
        #调用driver，启动app，拿到driver对象
        self.driver.launch_app()

    def tearDown(self) -> None:
        logger.info('执行tearDown方法')
        #关闭app
        self.driver.close_app()

    @classmethod
    def tearDownClass(cls) -> None:
        logger.info('执行tearDownclass方法')
        #退出app
        cls.driver.quit()
